# -*- coding: utf-8 -*-
# @Author : felix



# 全局变量 --- 字典格式存储
# 内置属性 ---外部不可修改
# 提供对应的方法 : 可以对这个属性进行修改，增加，显示


class g_context(object):  # 类继承
    _dic = {} # 内置属性，外部不可修改


    # 提供提供对应的方法 : 可以对这个属性进行修改，增加，显示

    # TODO 1 : 通过key进行设置
    def set_dict(self,key, value):
        self._dic[key] = value

    # TODO 2 : 通过可以获取数据
    def get_dict(self,key):
        #return self._dic[key]  # 如果这个key不存在，则会报错，不推荐
        return self._dic.get(key,None)  # 如果这个可以不存在，则返回None

    # TODO 3 : 通过字典去设置数据
    def set_by_dict(self,dic):
        self._dic.update(dic)

    # TODO 4 : 显示全局变量
    def show_dict(self):
        return self._dic

if __name__ == '__main__':
    gContext = g_context()
    gContext.set_dict("name","felix")
    print(gContext.get_dict("name"))
    dic_data_test = {"type":"client","age":19}
    gContext.set_by_dict(dic_data_test)
    print(gContext.show_dict())




